JAVA 基本資料類別
int = 整數類型 int a = 10
char = 單一字符 char letter = 'q'
float、double = 浮點數(預設為double,若要使用float => 3.1f)
boolean =布林值(返還 true、false)
String 是基本資料類別嗎?
String 是陣列,由多個char所組成(意不易外呢!)
String -> char[]
String s = "hello world"
JAVA中的大小寫
大寫通常是->物件
Integer a = new Integer();
小寫->基本類型
int b = 10;
物件通常都有方法,因此後面用.會有屬於該物件的方法可以用
Integer a = new Integer();
a.equals();
String s = "hello world";
s.toArray();
Array陣列
一個容器,用來儲存多個相同型別的資料容器
在JAVA中,透過宣告的方式會在記憶體產生位置,而變數則是隨機存放在記憶體中,陣列則是存放在連續性的、相連的記憶體位置中,所以陣列的大小一旦被定義後,就無法改變
type[] arrayName = new type[ArraySize];
Object 物件的基本介紹
物件是JAVA中的基本單位
根據 類別 Class 所創建的實體
類別 是一個模板或藍圖,用來定義物件的屬性(變數)和行為(方法)
每個物件都是類別的 一個實例,物件的屬性可以由物件的變數來表示
物件的行為則由物件的函數(方法)來定義
class objectName = new className();
sample:
Public class Car{
//屬性
String color;
String brand;
//方法
void drive(){
System.out.println("This car is driving.");
}
void stop(){
System.out.println("This car is Stopped.");
}
}
小魔王 == VS equals()
== 操作符: 比較2個值的"參考"(比較記憶體的位址是不是相同的)
是不是指向同一個物件實體,相同返回true、不同則是false
equals() 是一個方法,比較2個"物件"的內容,物件的東西是否一樣,
通常需要被覆,否則會像是 == 一樣的行為
練習一下
public static void main(String[] args) {
int a= 1;
a == 1; //true
char b = 'a';
b == 'a'; //true
Integer c = new Integer(1);
c == new Integer(1); //false
String d = 'abc';
d == 'abc'; //true
}
c 為false 的原因
Integer c 是一個物件,去比較另一個Integer,記憶體位址就不相同
d 是true 的原因
在JAVA中,String一經宣告則不能再變動,由於字串使用頻率很頻繁,為了提搞效能與記憶體的使用,於是有了 String pool的概念,在需要的時候從記憶體去尋找並且拿出來